package zadania_domowe.zad_dom_5;

public class Cplx {
    private double rzeczywista;                             // prywatne pole obu liczb
    private double urojona;                                 // prywatne pole obu liczb

    public Cplx(double rzeczywista, double urojona) {      // konstruktor dwuparametrowy  - czyli public i nazwa klasy
        this.rzeczywista = rzeczywista;
        this.urojona = urojona;
    }

    public void add(Cplx cplx) {                          // metoda która nic nie zwraca oraz przyjmuje jako parametr obiekt klasy Cplx
        this.rzeczywista += cplx.rzeczywista;             // to samo co this.rzeczywista = this.rzeczywista + cplx.rzeczywista;
        this.urojona += cplx.urojona;                     // to samo co this.urojona = this.urojona + cplx.urojona;
    }

    public void sub(Cplx cplx) {
        this.rzeczywista -= cplx.rzeczywista;
        this.urojona -= cplx.urojona;
    }

    public void mul(Cplx cplx) {
        this.rzeczywista *= cplx.rzeczywista;
        this.urojona *= cplx.urojona;
    }

    public void inc() {         // inc = increment (zwiekszanie o 1)
        rzeczywista++;          // inkrementacja pola o nazwie rzeczywista (zwiększenie o 1)
    }

    public void show() {
        // sposób z metodą statyczną String.format()
        String text = String.format("%.0f + %.0fi", rzeczywista, urojona);         // %.0f - znaczy, że wyświetli naszą liczbę rzecz. i ur. z tyloma cyframi po przecinku - jaka jest cyfra za kropką (tu: zero)
        System.out.println(text);

        // sposób z DecimalFormat
        // DecimalFormat df = new DecimalFormat("0");
        // System.out.println(df.format(rzeczywista) + " + " + df.format(urojona) + "i");
    }
}
